// 完善下面的代码，使程序能够正常运行。
// 要求 BaseCalculator 类中提供 getResult() 函数（无需实现），
// 在 AddCalculator 类中实现两个成员相加（m_A + m_B），
// 在 SubCalculator 类中实现两个成员相减（m_A - m_B）
/*
30
10
*/
#include <iostream>

using namespace std;

class BaseCalculator
{
public:
    virtual int getResult(int a, int b) = 0;
};

class AddCalculator:public BaseCalculator
{
public:
    virtual int getResult(int a, int b)
    {
        return a + b;
    }
};

class SubCalculator:public BaseCalculator
{
public:
    virtual int getResult(int a, int b)
    {
        return a - b;
    }
};

int main(int argc, char **argv)
{
    AddCalculator a;
    SubCalculator b;
    BaseCalculator *p = dynamic_cast<BaseCalculator *>(&a);
    cout << p->getResult(20, 10) << endl;
    p = dynamic_cast<BaseCalculator *>(&b);
    cout << p->getResult(20, 10) << endl;

    return 0;
}